/*4. Escreva um programa que faça o seguinte:
a. Leia uma matriz com nome e salário de cada funcionário da empresa (cinco funcionários são o bastante);
b. Depois de preenchida a matriz, calcule a contribuição de cada funcionário ao INSS, levando em consideração uma alíquota de 11%;
c. Calcule para cada funcionário o valor da parcela de dedução do Imposto de Renda, levando em consideração a tabela abaixo.
Base de Cálculo (R$)		Alíquota (%)	Parcela a Deduzir do IR (R$)
Até 1.710,78					-						-
De 1.710,79 até 2.563,91	   7,5                 	128,31
De 2.563,92 até 3.418,59	   15					320,60
De 3.418,60 até 4.271,59	   22,5					577,00
Acima de 4.271,59 			   27,5					790,58
*/

package Prova_01;

import javax.swing.JOptionPane;

public class teste4 {
    
    public static void main(String[] args){
        
        String nome[] = new String[5];
        float   salario[] = new float [5];
    
        for(int i=0; i<5; i++){
			nome[i] = JOptionPane.showInputDialog(null,"Digite o Nome [" + (i+1) + "]" ); 
            salario[i] = Float.parseFloat(JOptionPane.showInputDialog(null,"Salário de "+ nome[i]));
        }
        for(int i=0; i<5; i++){
            JOptionPane.showMessageDialog(null,"Funcionario: " + nome[i]+ 
                                     "\nValor INSS: " + inss(salario[i]) + 
                                     "\nValor IRRF: " + irrf(salario[i]));
        }
    }
        
    public static double inss(float x){
        
        int y =(int)((x*0.11)*100);
        double z = y/100.00; 
        return z;
    } 
    public static double irrf(float x){
        
        if (x<1710.78){
            
            double z = 0.00;            
            return z;
        }
        if ((x>1710.78) && (x<2563.91)){
            
            int z = (int)((((x-(x*0.11))*0.075)-128.31)*100);
            double f = z/100.00;
            return f;
        }
        if ((x>2563.91) && (x<3418.59)){
            
            int z = (int)((((x-(x*0.11))*0.15)-320.60)*100);
            double f = z/100.00;
            return f;
        }
        if ((x>3418.59) && (x<4271.59)){
            
            int z = (int)((((x-(x*0.11))*0.225)-577.0)*100);
            double f = z/100.00;
            return f;
        }
        if (x>4271.59){
             
             int z =(int) ((((x-(x*0.11))*0.275)-790.58)*100);
             double f = z/100.00;
             return f;
        }
        else {return 0;}
    }
}

